package com.hotacorp.opencloud.common.authcommon;

import java.io.Serializable;
import java.util.Collection;
import java.util.Map;
import java.util.Set;

import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
/**
 * 客户端信息bean
 * @author lwg
 *
 */
@Data
@NoArgsConstructor
@AllArgsConstructor
public class SysClientBean implements Serializable {

	/**
	 * 
	 */
	private static final long serialVersionUID = -3903459158272463768L;

	/**
	 * 应用标识
	 */
	private String clientId;
	/**
	 * 资源限定串(逗号分割)
	 */
	Set<String> resourceIds;
	/**
	 * 应用密钥(bcyt) 加密
	 */
	private String clientSecret;
	/**
	 * 应用密钥(明文)
	 */
	private String clientSecretStr;
	/**
	 * 范围
	 */
	private Set<String> scope;
	/**
	 * 5种oauth授权方式(authorization_code,password,refresh_token,client_credentials)
	 */
	private Set<String> authorizedGrantTypes;
	/**
	 * 回调地址 
	 */
	private Set<String> registeredRedirectUri;
	/**
	 * 权限
	 */
	private Collection<String> authorities;
	/**
	 * access_token有效期
	 */
	private Integer accessTokenValidity;
	/**
	 * refresh_token有效期
	 */
	private Integer refreshTokenValidity;
	/**
	 * {}
	 */
	private Map<String, Object> additionalInformation;
	/**
	 * 是否自动授权 是-true
	 */
	private Set<String> autoapprove;
}
